package net.muchine.core.domain.user;

import java.util.Date;

import javax.validation.constraints.Size;

import org.hibernate.validator.constraints.Email;
import org.hibernate.validator.constraints.NotEmpty;

public class User {
	private String groupId;
	
	private Long seq;
	
	@NotEmpty @Size(max=60)
	private String id;
	
	@NotEmpty @Size(max=30)
	private String firstName;
	
	@NotEmpty @Size(max=30)
	private String lastName;
	private String password;
	
	@NotEmpty @Size(max=60) @Email
	private String email;
	private String rank;
	private String language;
	private boolean admin;
	private Date createdTime;
	private Date lastLoginTime;
	
	private String localCreatedTime;
	private String localLastLoginTime;
	
	public User() {
		this.language = "en";
	}
		
	public String getGroupId() {
		return groupId;
	}
	public void setGroupId(String groupId) {
		this.groupId = groupId;
	}
	
	public Long getSeq() {
		return seq;
	}
	public void setSeq(Long seq) {
		this.seq = seq;
	}
	public String getId() {
		return id;
	}
	public void setId(String id) {
		this.id = id;
	}
	public String getFirstName() {
		return firstName;
	}
	public void setFirstName(String firstName) {
		this.firstName = firstName;
	}
	public String getLastName() {
		return lastName;
	}
	public void setLastName(String lastName) {
		this.lastName = lastName;
	}
	public String getPassword() {
		return password;
	}
	public void setPassword(String password) {
		this.password = password;
	}
	public String getEmail() {
		return email;
	}
	public void setEmail(String email) {
		this.email = email;
	}
	public String getRank() {
		return rank;
	}
	public void setRank(String rank) {
		this.rank = rank;
	}
	public String getLanguage() {
		return language;
	}
	public void setLanguage(String language) {
		this.language = language;
	}
	public boolean isAdmin() {
		return admin;
	}
	public void setAdmin(boolean admin) {
		this.admin = admin;
	}
	public Date getCreatedTime() {
		return createdTime;
	}
	public void setCreatedTime(Date createdTime) {
		this.createdTime = createdTime;
	}
	public Date getLastLoginTime() {
		return lastLoginTime;
	}
	public void setLastLoginTime(Date lastLoginTime) {
		this.lastLoginTime = lastLoginTime;
	}
	public String getLocalCreatedTime() {
		return localCreatedTime;
	}
	public void setLocalCreatedTime(String localCreatedTime) {
		this.localCreatedTime = localCreatedTime;
	}
	public String getLocalLastLoginTime() {
		return localLastLoginTime;
	}
	public void setLocalLastLoginTime(String localLastLoginTime) {
		this.localLastLoginTime = localLastLoginTime;
	}
}
